local extension = Package:new("rmt_cards", Package.CardPack)
extension.extensionName = "aaa_Romantic"

local RUtil = require ("packages.aaa_Romantic.utility.rmt_util")
RUtil.loadSkillSkelsByPackage(extension)

Fk:loadTranslationTable{
  ["rmt_cards"] = "浪漫卡牌",
}

local drugs = fk.CreateCard{
  name = "drugs",
  type = Card.TypeBasic,
  skill = "drugs_skill",
}
-- 将牌的牌面信息加入卡包
extension:addCardSpec("drugs", Card.Club, 1)
extension:addCardSpec("drugs", Card.Club, 13)
Fk:loadTranslationTable{
  ["drugs"] = "散",
	[":drugs"] = "基本牌<br /><b>时机</b>：出牌阶段限一次<br /><b>目标：</b>你<br /><b>效果：</b>若你已受伤，回复1点体力且下次受到的伤害+1。若你未受伤，或因此回复至满血，本阶段使用【杀】与【酒】次数+1。",
}

local bow = fk.CreateCard{
  name = "rmt_bow",
  type = Card.TypeEquip,
  sub_type = Card.SubtypeWeapon,
  equip_skill = "#rmt_bow_skill",
  attack_range = 4,
}

extension:addCardSpec("rmt_bow", Card.Club, 1)
extension:addCardSpec("rmt_bow", Card.Diamond, 1)
Fk:loadTranslationTable{
  ["rmt_bow"] = "神机连弩",
  [":rmt_bow"] = "装备牌·武器<br /><b>攻击范围</b>：4<br /><b>武器技能</b>：当你使用【杀】后，你有100%的几率可以再对目标使用一张【杀】（随距离衰减25%）。替换【诸葛连弩】",
  -- 距离1=100%概率，距离4=25%概率
}

local halberd = fk.CreateCard{
  name = "rmt_halberd",
  type = Card.TypeEquip,
  sub_type = Card.SubtypeWeapon,
  attack_range = 4,
  equip_skill = "#rmt_halberd_skill",
}
extension:addCardSpec("rmt_halberd", Card.Diamond, 12)
Fk:loadTranslationTable{
  ["rmt_halberd"] = "裂穹画戟",
  [":rmt_halberd"] = "装备牌·武器<br /><b>攻击范围</b>：４<br /><b>武器技能</b>：当你使用【杀】选择目标后，可以指定至多两名额外目标，当此【杀】被【闪】抵消后，此【杀】对所有目标均无效。替换【方天画戟】",
}

local blade = fk.CreateCard{
  name = "rmt_blade",
  type = Card.TypeEquip,
  sub_type = Card.SubtypeWeapon,
  attack_range = 3,
  equip_skill = "#rmt_blade_skill",
}
extension:addCardSpec("rmt_blade", Card.Spade, 5)
Fk:loadTranslationTable{
  ["rmt_blade"] = "破邪偃月刀",
  [":rmt_blade"] = "装备牌·武器<br /><b>攻击范围</b>：３<br /><b>武器技能</b>：锁定技，当你使用【杀】指定目标后，令目标角色技能无效直到此【杀】结算后。替换【青龙偃月刀】",
}

--- 搬运界标木马
local wooden_ox = fk.CreateCard{
  name = "rmt__wooden_ox",
  type = Card.TypeEquip,
  sub_type = Card.SubtypeTreasure,
  equip_skill = "rmt__wooden_ox_skill&",
  on_uninstall = function(self, room, player)
    Treasure.onUninstall(self, room, player)
    player:clearSkillHistory("rmt__wooden_ox_skill&", Player.HistoryPhase)
  end,
}
extension:addCardSpec("rmt__wooden_ox", Card.Diamond, 5)
Fk:loadTranslationTable{
  ["wooden_ox"] = "木牛流马",
  ["rmt__wooden_ox"] = "木牛流马",
  [":rmt__wooden_ox"] = "装备牌·宝物<br/><b>宝物技能</b>：<br/>" ..
  "出牌阶段限一次，你可将一张手牌扣置于装备区里的【木牛流马】下（称为“辎”，“辎”至多有5张），然后你可以将【木牛流马】置入一名"..
  "其他角色的装备区。你可以如手牌般使用或打出“辎”。",

  ["rmt__wooden_ox_skill&"] = "木牛",
  [":rmt__wooden_ox_skill&"] = "出牌阶段限一次，你可将一张手牌扣置于装备区里的【木牛流马】下（称为“辎”，“辎”至多有5张），"..
  "然后你可以将【木牛流马】置入一名其他角色的装备区。你可以如手牌般使用或打出“辎”。",
  ["#rmt__wooden_ox-move"] = "你可以将【木牛流马】移动至一名其他角色的装备区",
  ["$rmt_carriage"] = "辎",
  ["#rmt__wooden_ox"] = "你可以将一张手牌扣置于【木牛流马】下",
}


--- 【衍生牌】

local peng = fk.CreateCard{
  name = "&peng",
  type = Card.TypeBasic,
  skill = "peng_skill",
  is_damage_card = true, -- 失去体力算伤害牌吗？
}
extension:addCardSpec("peng", Card.Spade, 12)
extension:addCardSpec("peng", Card.Club, 12)
extension:addCardSpec("peng", Card.Heart, 12)
extension:addCardSpec("peng", Card.Diamond, 12)
Fk:loadTranslationTable{
  ["peng"] = "嘭！",
	[":peng"] = "基本牌<br /><b>时机</b>：出牌阶段限一次<br /><b>目标：</b>你邻家<br /><b>效果：</b>目标角色须将一张牌与此【嘭！】置于牌堆顶，或失去1点体力。",
}


local chunqiu_brush = fk.CreateCard{
  name = "&chunqiu_brush",
  type = Card.TypeEquip,
  sub_type = Card.SubtypeTreasure,
  equip_skill = "rmt__chunqiu_brush_skill&",
  on_uninstall = function(self, room, player)
    Treasure.onUninstall(self, room, player)
    player:clearSkillHistory("rmt__chunqiu_brush_skill&", Player.HistoryPhase)
  end,
}
extension:addCardSpec("chunqiu_brush", Card.Heart, 5)
Fk:loadTranslationTable{
  ["chunqiu_brush"] = "春秋笔",
  [":chunqiu_brush"] = "装备牌·宝物<br/>"..
  "<b>宝物技能</b>：出牌阶段限一次，你可以随机选择一项，然后你选择一名角色，其从此项开始正序或逆序执行以下效果：<br>"..
  "起：失去1点体力；<br>承：摸已损失体力值张牌；<br>转：回复1点体力；<br>合：弃置已损失体力值张手牌。<br>"..
  "此牌离开你的装备区后销毁。",
}



-- 将牌的特征信息加入本体
extension:loadCardSkels {
  drugs,
  bow,
  halberd,
  blade,

  wooden_ox,
  peng,
  chunqiu_brush,
}

return extension
